This invention relates generally to satellite navigation receivers and more particularly to multipath mitigation in a satellite navigation receiver.
Satellite navigation systems, such as GPS (USA) and GLONASS (Russia), are well known in the art and are intended for highly accurate self-positioning of users possessing special navigation receivers. A navigation receiver receives and processes radio signals transmitted by satellites located within line-of-sight distance of the receivers. The satellite signals comprise carrier signals that are modulated by pseudo-random binary codes. The receiver measures the time delay of the received signal relative to a local reference clock or oscillator. These measurements enable the receiver to determine the so-called pseudo-ranges between the receiver and the satellites. The pseudo-ranges are different from the ranges (distances) between the receiver and the satellites due to various noise sources and variations in the time scales of the satellites and receiver. If the number of satellites is large enough, then the measured pseudo-ranges can be processed to determine the user location and coordinate time scales.
The requirement of accurately determining user location with a high degree of precision, and the desire to improve the stability and reliability of measurements, have led to the development of differential navigation (DN). In differential navigation, the task of finding the user position, also called the Rover, is performed relative to a Base station (Base). The precise coordinates of the Base station are known and the Base station is generally stationary during measurements. The Base station has a navigation receiver which receives and processes the signals of the satellites to generate measurements. These signal measurements are transmitted to the Rover via a communication channel (e.g., wireless). The Rover uses these measurements received from the Base, along with its own measurements taken with its own navigation receiver, in order to precisely determine its location. The location determination is improved in the differential navigation mode because the Rover is able to use the Base station measurements in order to compensate for the major part of the strongly correlated errors in the Rover measurements.
Various modes of operation are possible while using differential navigation. In post-processing (PP) mode, the Rover's coordinates are determined by co-processing the Base and Rover measurements after all measurements have been completed. This allows for highly accurate location determination because more data is available for the location determination. In real-time processing (RTP) mode, the Rover's coordinates are determined in real time upon receipt of the Base station information received via the communication channel.
The location determination accuracy of differential navigation may be further improved by supplementing the pseudo-range measurements with measurements of the phases of the satellite carrier signals. If the carrier phase of the signal received from a satellite in the Base receiver is measured and compared to the carrier phase of the same satellite measured in the Rover receiver, measurement accuracy may be obtained to within several percent of the carrier's wavelength. The practical implementation of those advantages, which might otherwise be guaranteed by the measurement of the carrier phases, runs into the problem of ambiguity resolution for phase measurements.
The ambiguities are caused by two factors. First, the difference of distances from any satellite to the Base and Rover is usually much greater than the carrier's wavelength. Therefore, the difference in the phase delays of a carrier signal received by the Base and Rover receivers may substantially exceed one cycle. Second, it is not possible to measure the integer number of cycles from the incoming satellite signals; one can only measure the fractional part. Therefore, it is necessary to determine the integer number of cycles, which is called the “ambiguity”. More precisely, we need to determine the set of all such integer parts for all the satellites being tracked, one integer part for each satellite. One has to determine this set along with other unknown values, which include the Rover's coordinates and the variations in the time scales.
At a high level, the task of generating highly-accurate navigation measurements is formulated as follows: it is necessary to determine the state vector of a system, with the vector containing nΣunknown components. Those include three Rover coordinates (usually along Cartesian axes X, Y, Z) in a given coordinate system (sometimes time derivatives of coordinates are added too); the variations of the time scales which is caused by the phase drift of the local main reference oscillator in the receiver; and n integer unknown values associated with the ambiguities of the phase measurements of the carrier frequencies. The value of n is determined by the number of different carrier signals being processed, and accordingly coincides with the number of satellite channels actively functioning in the receiver. At least one satellite channel is used for each satellite whose broadcast signals are being received and processed by the receiver. Some satellites broadcast more than one code-modulated carrier signal, such as a GPS satellite which broadcasts a carrier in the L1 frequency band and a carrier in the L2 frequency band. If the receiver processes the carrier signals in both of the L1 and L2 bands, a so-called dual-frequency receiver, the number of satellite channels (n) increases correspondingly. Dual-frequency receivers allow for ionosphere delay correction therefore making ambiguity resolution easier.
Two sets of navigation parameters are measured by the Base and Rover receivers, respectively, and are used to determine the unknown state vector. Each set of parameters includes the pseudo-range of each satellite to the receiver, and the full (complete) phase of each satellite carrier signal. Each pseudo-range is obtained by measuring the time delay of a code modulation signal of the corresponding satellite. The code modulation signal is tracked by a delay-lock loop (DLL) circuit in each satellite tracking channel. The full phase of a satellite's carrier signal is tracked by a phase-lock-loop (PLL) in the corresponding satellite tracking channel. An observation vector is generated as the collection of the measured navigation parameters for specific (definite) moments of time.
The relationship between the state vector and the observation vector is defined by a well-known system of navigation equations. Given an observation vector, the system of equations may be solved to find the state vector if the number of equations equals or exceeds the number of unknowns in the state vector. Conventional statistical methods are used to solve the system of equations: the least squares method, the method of dynamic Kalman filtering, and various modifications of these methods.
Practical implementations of these methods in digital form may vary widely. In implementing or developing such a method on a processor, one usually must find a compromise between the accuracy of the results and speed of obtaining results for a given amount of processor capability, while not exceeding a certain amount of loading on the processor.
One general scheme comprises the following steps. The measured values of the pseudo-ranges and full phases at specific (definite) moments of time, along with an indication of the satellites to which these measurements belong and the time moments of the measurements, are transmitted from the Base to the Rover. Corresponding values are measured in the Rover receiver. The processing includes the determination of the single differences of the pseudo-ranges and full phases between the Base and Rover measurements for each satellite. The strongly correlated errors are compensated (i.e., substantially cancelled) in the single differences. Then, the residuals of the single differences are calculated by subtraction of calculated values from the measured results. The processing of residuals allows one to linearize the initial system of navigation equations (sometimes several subsequent iterations are necessary), which makes possible the use of the well developed body of mathematics for solving systems of linear equations. The components of the state vector, with the n ambiguities included, are found as a result of the solution. But the calculated values of the ambiguities are not necessarily integer numbers, and are often floating point numbers. Because of this, they are called float ambiguities, or floating ambiguities, at this stage of the solution. To find true values of the integer ambiguities one uses the procedure of rounding off the float ambiguity vector to the nearest set of integers. This process is called the ambiguity resolution. Only after the ambiguity resolution has been done is it possible to determine the true values of residuals and then, by solving the system of equations again, to find the coordinate values for the baseline connecting the Base and Rover, and consequently to determine the exact coordinates of the Rover and the correction to its clock drift.
The above described general scheme of computations is well known in the art and is described in further detail, for example, in, Bradford W. Parkinson and James J. Spilker Jr., Global Positioning Theory and Applications, Volume 163 of Progress In Astronautics and Aeronautics, published by the American Institute of Aeronautics and Astronautics, Inc, Washington D.C., 1996, which is incorporated herein by reference.
One of the problems with satellite navigation receivers is that satellite signals are difficult to detect in certain circumstances. Various environmental influences and interference signals cause measurement errors. One of the major sources of error in satellite navigation receivers is multipath error. Multipath error is caused by satellite signals reflecting off various surfaces (e.g., buildings). These reflected signals arrive at the receiver later than the direct line-of-sight signal, as the reflected signals travel via a longer path to the satellite receiver. If these multipath signals are tracked in the satellite receiver, positioning errors will occur. Another characteristic of the multipath signals is that the multipath signals are generally received from a direction different from the line-of-sight signal.
Various techniques have been employed to reduce the effect of multipath signals. One technique is to use special processing methods in order to detect and remove the multipath signals from the navigation computation. These techniques generally rely on the fact that multipath signals are delayed in time as compared to the direct line-of-sight signals. For example, A. J. Van Dierendonck, M. S. Braasch, Evaluation of GNSS Receiver Correlation Processing Techniques for Multipath and Noise Mitigation, Proceedings of the Institute of Navigation National Technical Meeting, Santa Monica, Calif., Jan. 14-16, 1997, pp. 207-215, describes techniques for multipath mitigation at the digital signal processing stage. These techniques are based on different modifications of correlation convolution for the received and reference signals. The focus of the described methods is to change the shape of the reference signal so that multipath errors at certain delays of the reflected signal would be minimal. One problem with multipath mitigation using this technique is energy loss (i.e., reduction in signal-to-noise ratio) and the inability to suppress multipath errors caused by reflected signals with delay less than 10 . . . 30 m with respect to the direct signal.
Other techniques for reducing the effect of multipath signals are directed to antenna design. These techniques rely on the fact that multipath signals generally arrive at the antenna from a direction different from the line-of-sight signals. These antenna techniques generally are based on designing the antenna gain pattern to counter the reflected multipath signals. These multipath signals are attenuated by the antenna's insensitivity to signals coming from the unwanted direction.
Another antenna technique for reducing multipath error is the use of controllable antenna arrays (e.g., phased antenna arrays) in which multiple antenna elements are connected to independent receiver channels. Through appropriate signal processing, the directional response of a phased antenna array may be electronically altered. While phased antenna arrays may be useful in reducing multipath signals, one problem with phased antenna arrays is the computational complexity required in the receiver. Such receivers generally require a powerful processor to process the signals from the multiple antenna elements, have high power consumption, and have relatively large physical dimensions.